home *** CD-ROM | disk | FTP | other *** search
- .........................................................................
-
- from the Applied Computational Electromagnetics Society Newsletter,
- vol. 8, no. 3, pp. 8-10, November 1993.
-
- .........................................................................
-
-
- INFORMATION ON THE HISTORY AND AVAILABILITY OF NEC-MOM CODES
- FOR PC's & UNIX
-
- (part I of II)
-
-
- Dick Adler
- ACES Software Exchange Committee
-
-
-
- (This short note was written to address the many requests ACES receives
- concerning the status of the NEC-MOM codes [NEC2 (ca 1981), NEC3 (ca
- 1985), and NEC4 (1993)]. The Software Exchange Committee is tasked to
- distribute information on the availability of all major CEM tools. The
- committee's Software Source Book (under development) will list all
- available CEM codes and will cite information on eligibility for
- purchasing restricted codes like NEC3 and NEC4.)
-
-
- NEC2
-
- The original NEC2 was developed for the Navy by Lawrence Livermore
- Labs in 1981. Jerry Burke has been and still is the major contributor
- to the NEC-MOM family of codes. The code has always been a "card
- image/batch run" operation initially designed for CDC and later for VAX
- computers. It has been ported to many other machines by myriad
- individuals. Any existing copy of the code has a genealogy, but few
- users are aware of where their copy "has been" and how "up to date" its
- capabilities are.
-
- NEC2's identifying features are the Sommerfield-Norton ground
- interaction for wire structures above lossy ground and a numerical
- Green's function that provides an option for modifying a structure
- without repeating the complete solution.
-
- The documentation that exists FOR THE ORIGINAL VERSION OF THE CODE
- is in three parts: A theory manual (Vol. 1, Pt. I), a code manual
- (Vol I, Pt. II) containing a detailed description of the Fortran source
- code, and a user manual (Vol. 2, Pt. III) containing instructions on
- using the code with some sample input/outputs. Jerry Burke can
- sometimes provide some of these manuals or they can be obtained through
- NTIA as NOSC TD 116.
-
- The PC versions of NEC2 fall into two categories:
-
- 1. A code that "fits into" the DOS-limited 640 kB of memory space, and
-
- 2. A code that will compile and run (hopefully) under DOS-extended
- 16 and 32 bit Fortran 77 compilers. (The 32-bit versions of these
- compilers are usually derived from 32-bit UNIX Fortran 77 compilers.
- Typical companies providing these compilers and DOS extenders are Lahey,
- Microway, OTG/Salford, Watcom, Microsoft (power Book Fortran), etc. If
- a particular version of a modified NEC2 compiles and runs under one
- release of one version of these compilers, it does not mean it will
- still run under newer, updated releases. Sometimes the problems are
- traceable to the ability or tolerance of the compilers to accept non-77
- statements that abound in NEC2.)
-
-
- IGUANA
-
- NOSC began development, in the early 1980's, of a software package
- called IGUANA (Interactive Graphics Utilities for Automated NEC
- Analysis). IGUANA was developed on an IBM-PC compatible platform with
- CGA graphics and with peripherals available at the time. It featured a
- heavily prompted input editor for creating NEC input data sets (card
- decks). It also allowed a serious user to input geometry data via an
- acoustic digitizer. The visualization of the input structure (wires
- only) was a useful feature. The output data could be plotted via a
- simple graphics package called GRAPS which allowed linear, log, polar,
- Smith Chart, and limited 2-D contour plots. IGUANA was intended to feed
- a mainframe-resident version of NEC2 and to receive ASCII output data
- for plotting. A collection of other utilities was included in IGUANA.
- As is often the case with software development, the limited funds
- available to NOSC did not provide for a bug-free version of the several
- IGUANA's that were developed. Nevertheless, users learned to live with
- the limitations and quirks of early IGUANA's. Version 4.2 was the most
- useable and formed the basis for NEEDS 1.0 (The Numerical
- Electromagnetics Engineering Design System) that would become the first
- PC-based NEC software package, in 1987. The current NEEDS 2.0 contains
- IGUANA 5.4. Version 6 of IGUANA was initiated several years ago, but
- was never debugged.
-
-
- NEEDS and NEC81
-
- During the mid-80's, mainframe NEC users modified NEC2 to "fit" into
- the severe 640 kB limit of the PC-DOS environment. Compilers available
- at that time (notably Microsoft Fortran 3.31 and RM Fortran 2.4) allowed
- overlay structures and versions of NEC2 for PC's sprung up all over the
- planet. Some were limited to 75 unknowns (no overlay) and some boasted
- over 500 unknowns (by stripping out many of NEC2's memory-consuming
- features.) The version of NEC-PC in NEEDS 1.0 was somewhat limited in
- capability, but still provided many users with a useable miniature
- version of NEC2 on a PC. The most bug-free and successful porting of
- NEC2 to the PC was completed in 1989 by David J. Pinion, P.E., who
- named it NEC81. Dave, starting with an IBM mainframe version which had
- been overlaid to fit into a 360 kB "mainfrane" at NPS, managed to
- squeeze 90 unknowns (an array of 8100 elements) into memory, with a
- maximum limit of 300 unknowns, using the NEC2 out-of-core capability.
- (Out-of-core uses RAM disk or hard disk to store files when the in-core
- capability is exceeded. Notice the use of mainframe terms like "core"
- in place of memory.) Dave geneorously made version 2.2 of the code
- available to ACES for inclusion in NEEDS 2.0, the still-current version.
-
-
- .........................................................................
-
- from the Applied Computational Electromagnetics Society Newsletter,
- vol. 8, no. 3, pp. 8-10, November 1993.
-
- .........................................................................
-
-
- INFORMATION ON THE HISTORY AND AVAILABILITY OF NEC-MOM CODES
- FOR PC's & UNIX
-
- (part II of II)
-
-
- Dick Adler
- ACES Software Exchange Committee
-
-
- DOS-EXTENDED NEC2's
-
- During the mid 1980's (before the 80386 arrived), IBM introduced
- their ill-fated PC/RT which used a 32 bit RISC processor, running under
- AIX, a version of UNIX. The PC/RT was aimed at the frustrated PC user
- that refused to take the UNIX "cold shower". It offered a "DOS"
- capability (80286) under the UNIX banner. Theoretically, one could port
- a mainframe NEC to the RT, compile, and link it under the 32-bit RT
- Fortran, run NEC jobs under UNIX, while at the same time, under the DOS
- umbrella, crank out input datasets and process outputs. It failed
- miserably. The Fortran was a version that Bell Labs "threw in the
- garbage can" because it was too buggy to fix. Someone forked it out of
- the trash and "repaired" it, but the repairs could not fix the slow,
- inaccurate performance. And the RT's DOS operation was slower than the
- original 6 MHz IBM-PC/AT; the DOS operations were emulated under UNIX
- and screen writes were done at about 300 baud, and looked like a
- Selectric typewriter!
-
- Other attempts to juice-up AT-based Fortran codes involved special
- 68000-based co-processor add-in cards. The Definicon 20 MHz board was
- popular, but its Achilles heel was an ill-fated compiler that had the
- same roots as the IBM RT compiler. Several other early 32-bit extended
- DOS compilers suffered from the same origins. (Their common ancestry
- was discovered when the same identical error numbers and error messages
- arose with every new compiler we tried!)
-
- The first successful PC Fortran 77 32-bit compiler that was robust
- enough to handle NEC was the Microway NDP Fortran v. 1.4.3.
- Unfortunately, the compiler was modified and upgraded so often that very
- few people could keep up with the "improvements". As the version
- numbers increased, the solution times of NEC problems also increased.
- Meanwhile, Microsoft was never able to produce a true 32-bit compiler.
- Rumour has it that their early 32-bit compiler staff abandoned ship and
- went to Absoft and produced an excellent Macintosh 32-bit Fortran
- compiler, which Jerry Burke uses very successfully on all versions of
- NEC. During the last 3-4 years, a flood of 32-bit compilers has washed
- over the PC community. There does not seem to be a comprehensive list
- of each version with documented highlights of successes and failures.
- The ACES Newsletter is a logical home for such an effort. Perhaps this
- short note will spark interest in sharing information among the NEC-PC
- community, via the Newsletter.
-
- The various 32-bit compilers all support the xxx87 Intel math
- co-processor which features a double-precision mantissa. The speedy
- Weitek math coprocessor has been used on NEC but ultimately fails in
- high-precision solutions due to its limited single-precision mantissa.
- Most Weitek chip versions have not supported DOUBLE PRECISION
- computations. Use of single precision computations with the xxx387
- coprocessor is not successful. The NEC code was designed for a 64-bit
- CDC system, so VAX and IBM 32-bit systems demand double precision
- versions of the source code, or the use of an autodouble option at
- compile time. NEC81 judiciously uses double precision based on a trial
- and error elimination of unneeded double precision calls, a technique
- that allowed the maximum number of unknowns in the restricted DOS
- contiguous memory space. Such careful use of DP is not necessary in
- DOS-extended operation. The penalty for brute-force DP use is only
- about 15% increase in run-time for most current 32-bit compilers.
-
-
- 32-BIT NEC2's:
-
- A MACINTOSH version of NEC2 was produced by Jerry Burke then was
- converted to a PC version via the Microway compiler by Tom Wallace of
- Arco Power Technology Inc. of Washington, D.C., and was increased to
- 2000 or more unknowns and was called NEC2S and NEC2D. It has not been
- extensively tested by the ACES Software Exchange Committee and as such
- is not considered a supported code. It will be sent to requestors with
- no prediction of performance capability, but any and all experiences
- with its use that are reported will be shared via the [ACES] Newsletter.
- These reports will be used to help elevate the code to placement on ACES
- SOFTWARE LIST for distribution to anyone.
-
- NEC2S and NEC2D for a UNIX SUN4 workstation has been provided to
- ACES by Per Hj. Lehne of Norwegian Telcom Research for use on a UNIX
- SUN SPARC4 workstation. The same conditions of support are in existance
- as for the ARCO PC NEC2. The origin of NEC2/UNIX is the ARCO NEC2D.
-
- NEC2S/MAC and NEC2D/MAC for the Macintosh, originated by Jerry
- Burke, are available from Jerry Burke under the same conditions.
-
-
- MININEC CODES AND SUPPORT SOFTWARE
-
- The NOSC public domain version of MININEC 3.13 is distributed via
- ACES as part of the NEEDS 2.0 package. It is interactive but has no
- built-in structure viewer nor output plotting. Several amateur
- radio-targeted third-party versions of MININEC have been developed by
- computer-savvy amateurs and are for sale. The two most popular MININEC
- derivatives are MN by Brian Beezley of Vista, CA and ELNEC by Roy
- Lewallen of Beaverton, OR. Both have excellent structure viewers and
- pattern plotters. Both can superimpose wire currents (including phase)
- on the structure views and ELNEC supports a one-plane radiation pattern
- overlaid on the structure view. ELNEC's data input scheme is easy to
- use for the beginner and offers limited geometry manipulation and
- duplication features, including a tapering option for segments. MN
- provides near fields; ELNEC does not.
-
-
- NEC3 AND NEC4
-
- The remaining NEC codes in the preface paragraph, NEC3 (allows
- buried wires) and NEC4 (improved accuracy for stepped-radius wires and
- electrically-small segments, adds end caps and insulated wires, smart
- input card-reader, catenary-shaped wires, and improved error detection)
- are still Military Critical technology. That status is under question
- and may hopefully disappear eventually.
-
- .........................................................................
-
-
-
-